﻿using System;

namespace MemoryDuosInterfaz
{
    internal interface ITablero
    {
        void ActualizarEstadoPartida();

        void almacenarCoordenadasParejasLista(Coordenadas coordenadas);

        int Alto { get; set; }

        int Ancho { get; set; }

        System.Windows.Forms.Button[,] ArrayBotones { get; set; }

        bool comprobarCartasLista();

        void destaparCarta(object sender, EventArgs e, System.Windows.Forms.Timer timerCartas, System.Windows.Forms.Timer timerInactividad, TimeSpan tiempo, System.Windows.Forms.Form partida);

        bool EsFinPartida();

        bool[,] EstadoTablero { get; set; }

        bool esValido(int alto, int ancho);

        void FinalizarPartida(TimeSpan tiempo);

        string Galería { get; set; }

        bool GetEstado(Coordenadas coordenadas);

        System.Drawing.Bitmap GetImagen(Coordenadas coordenadas);

        bool[,] HayImagen { get; set; }

        System.Drawing.Bitmap[,] Imagenes { get; set; }

        System.Collections.Generic.List<System.Drawing.Bitmap> listaImagenes { get; set; }

        Coordenadas obtenerCoordenadaBoton(System.Windows.Forms.Button boton);

        void PausarPartida(TimeSpan tiempo);

        void SetEstado(Coordenadas coordenadas, bool estadoNuevo);

        void SetImagen(int alto, int ancho, System.Drawing.Bitmap imagen);

        bool SonIguales(Coordenadas coordenadas1, Coordenadas coordenadas2);

        void TaparCarta(Coordenadas c1);

        void TaparCartas(Coordenadas c1, Coordenadas c2);

        void TaparCartasDiferentes(System.Windows.Forms.Timer timerCartas);
    }
}
